package com.music.service.albums.dao;

import java.util.List;

import com.music.service.albums.beans.Album;
import com.music.service.albums.exceptions.AlbumPermissionDeniedException;

public interface AlbumDAO {

	public boolean addNewAlbumToDefaultFolder(final Long pMemberId, final String pAlbumName) ;
	
	public boolean addExistingAlbumToDefaultFolder(final Long pMemberId, final Long pAlbumId) ;
		
	public boolean deleteAlbum(final Long pMemberId, final Long pAlbumId);

	public boolean editAlbumName(final Long pMemberId, final Long pAlbumId,
			final String pAlbumName);

	public boolean addSongToAlbum(final Long pMemberId, final Long pAlbumId,
			final Long pSongId);

	public boolean deleteSongFromAlbum(final Long pMemberId,
			final Long pAlbumId, final Long pSongId)
			throws AlbumPermissionDeniedException;

	public boolean checkMemberPermissionForAlbum(final Long pMemberId,
			final Long pAlbumId);
	public List<Album> getDefaultAlbums(final Long pMemberId);
	

}
